package org.epanetgrid.otimizacao.objfunctions;

import org.epanetgrid.otimizacao.util.ExceptionUtils;
import org.epanetgrid.resultado.ResultadoSimulacao;


/**
 * @author Cícero Alan Leite Cruz, alanlcruz@gmail.com, 09/01/2008
 *
 */
public class CustoTotalObjetiveFunction implements ObjectiveFunction<ResultadoSimulacao, Double> {

	private static final long serialVersionUID = -2546188844400549061L;

	/**
	 *
	 * @see org.epanetgrid.otimizacao.objfunctions.funcionalidades.ICustoPorVolumeCalculador#evaluate(ResultadoSimulacao, double)
	 */
	public Double evaluate(ResultadoSimulacao resultado) {
		ExceptionUtils.checkNull(resultado, "O resultado para a função objetivo não pode ser nulo.");
		
		return resultado.getCustoDeEnergia();
	}
}
